package cn.edu.ctbu.sbadmin.grade.domain;

import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 教师表
 * </p>
 *
 * @author 关注公众号：MarkerHub
 * @since 2022-05-08
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName(value = "subject")
@ApiModel
public class SubjectDO  implements Serializable {

	private static final long serialVersionUID = 1L;

	@TableId(value = "id", type = IdType.AUTO)
	private Long id;


	//th_num
	@ExcelProperty("届")
	private String thNum;

	private Long teacherId;

	@TableField(exist = false)
	@ExcelProperty("教师姓名")
	private String teacherName;

	@TableField(exist = false)
	@ExcelProperty("工号")
	private String tno;



	@ExcelProperty("课题名")
	private String subjectName;


	@ExcelProperty("专业")
	private String professionType;

	@ExcelProperty("课程类型")
	private String subjectType;

	@ExcelProperty("课题来源")
	private String subjectFrom;



	@ExcelProperty("课题简介")
	private String Introduction;



	@ExcelProperty("基本要求")
	private String baseReq;

	@ExcelProperty("参考资料")
	//`references`
	@TableField(value = "`references`")
	private String references;


	/**
	 * 删除人的id
	 */
	private Long deleteUserid;




	@ExcelProperty(value = "第二导师Id")
	private Long secondTutor;


	private Long studentId;

	@TableField(exist = false)
	@ExcelProperty("学生姓名")
	private String studentName;

	@TableField(exist = false)
	@ExcelProperty("学号")
	private String sno;


	@ExcelProperty("选题方式")
	private String selectType;

	/**
	 * 是否被删除
	 */
	private Integer isDeleted;


	@ExcelProperty("审核意见")
	private String auditOpinion;

	@ExcelProperty("审核意见Id")
	private Integer auditState;


	/**
	 * 创建时间
	 */
	private Date gmtCreate;

	/**
	 * 修改时间
	 */
	private Date gmtModified;


	@TableField(exist = false)
	@ExcelProperty("审核状态名")
	private String stateName;



	@ExcelProperty("审核说明")
	private String auditDescription;




}
